#include "stdio.h"
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <stdio.h>
#include <string.h>
#include <sys/ioctl.h>
#include <poll.h>
#include <stdint.h>
#include <sys/select.h>

#include "wdg.h"

#define    WDOG_DEV      "/dev/watchdog0"     

void sleep_ms(unsigned int ms)
{
    struct timeval delay;
	delay.tv_sec = 0;
	delay.tv_usec = ms * 1000; 
	select(0, NULL, NULL, NULL, &delay);
}

int main(int argc, char **argv)
{
    int fd;

    printf("Reset-------->\r\n");

    fd = wdg_open(WDOG_DEV);
    if (fd < 0) 
    {
        printf("Open watchdog err\r\n");
        return -1;
    }

    wdg_on_off(fd, 0);

    wdg_set_timeout(fd, 2);

    wdg_on_off(fd, 1);

    int cnt = 0;
    while (1)
    {
        printf("--------> %d\r\n", cnt);
        wdg_feed(fd);
        if (++cnt < 20)
        {
            sleep_ms(500);
        }
        else
        {
            while (1)
            {
                sleep_ms(5000);
            }
        }
    }


    return 0;
}